package com.example.baselibrary.bases
/**
 * 应用全局常量定义
 *
 * 包含：
 * 1. 日志标签
 * 2. 文件路径
 * 3. 网络相关
 * 4. 通用配置
 */
object Constants {

    /**********************
     * 设备编号
     **********************/
    const val MEDATIONID = "MEDATIONID"
    // 主页 输入框的 眼睛状态
    const val EYESTATE = "EYESTATE"

    // 身份证签到
    const val IDCARD_SIGN = "IDCARD_SIGN"
    //二维码签到
    const val QRCODE_SIGN = "QRCODE_SIGN"
    //输入框签到
    const val INPUT_SIGN = "INPUT_SIGN"

    /**********************
     * 是否开启调试模式
     **********************/
    const val DEBUG = true
    /**********************
     * 日志相关常量
     **********************/
    const val TAG = "KotDomeApp"
    const val DEBUG_LOG_TAG = "$TAG-Debug"
    const val HTTP_LOG_TAG = "$TAG-HTTP"
    const val LOG_DIRECTORY = "logs"
    const val MAX_LOG_FILE_SIZE = 2 * 1024 * 1024 // 2MB

    /**********************
     * 文件路径常量
     **********************/
    const val BASE_STORAGE_PATH = "KotDomeApp"
    const val CACHE_DIR = "cache"
    const val IMAGE_DIR = "images"
    const val DOWNLOAD_DIR = "downloads"

    /**********************
     * 网络相关常量
     **********************/
    const val CONNECT_TIMEOUT = 15L // 秒
    const val READ_TIMEOUT = 20L // 秒
    const val WRITE_TIMEOUT = 15L // 秒
    const val BASE_URL = "https://api.example.com/v1/"
    const val URL = "URL"

    /**********************
     * 通用配置常量
     **********************/
    const val DATE_FORMAT_FULL = "yyyy-MM-dd HH:mm:ss"
    const val DATE_FORMAT_SHORT = "MM-dd HH:mm"
    const val PAGE_SIZE = 20 // 默认分页大小

    /**********************
     * SharedPreferences Key
     **********************/
    object PrefKeys {
        const val USER_TOKEN = "user_token"
        const val LAST_LOGIN_TIME = "last_login_time"
        const val APP_THEME = "app_theme"
    }

    /**********************
     * Bundle/Intent Extra Key
     **********************/
    object ExtraKeys {
        const val USER_ID = "extra_user_id"
        const val ITEM_ID = "extra_item_id"
        const val FROM_PAGE = "extra_from_page"
    }

    /**********************
     * 请求码/结果码
     **********************/
    object RequestCode {
        const val PICK_IMAGE = 1001
        const val SCAN_QR_CODE = 1002
    }
}